接收消息,解码协议、解码body内容,站内搜索文章: 编码解码
客户端发送心跳:
场景一:
当与服务端建立连接时(ConnClientChannelHandler#channelActive),发送握手或者快速连接请求;
在接收到握手或者快速连接响应时(ConnClientChannelHandler#channelRead),发送心跳请求;
场景二:
当网络断开时不主动关闭连接,而是尝试发送一次心跳检测,如果能收到响应,说明网络短时间内又恢复了,否则就断开连接,等待网络恢复并重建连接。
见mpush-client-java工程 MPushClient#onNetStateChange()方法;
服务端接收处理心跳:1
2//ConnectionServer#init()
messageDispatcher.register(Command.HEARTBEAT, HeartBeatHandler::new);
1 | public final class HeartBeatHandler implements MessageHandler { |
接入服务文章目录: